
// APP 接口
import config from "./config";

var domain = config.getDomain;
var DUIXIN_API =  domain + '/index.php?v=1&appid='+config.getAPPID+'&appsecret='+config.getAPPSECRET+'&';

// 全局接口配置
const baseUrl = domain;
const apiConfig = {
  appData: DUIXIN_API + 's=httpapi&c=app&m=index'
}

// 封装请求方法
function request(url, method = 'GET', data = {}) {
  return new Promise((resolve, reject) => {
    uni.request({
      url: url,
      method: method,
      data: data,
      success: (res) => {
        if (res.statusCode === 200) {
          // 打印响应数据
          //console.log('app:', res.data);
          resolve(res.data)
        } else {
          // 打印请求失败信息
          //console.log('app请求失败:', res);
          reject(res)
        }
      },
      fail: (err) => {
        reject(err)
      }
    })
  })
}

// 获取应用数据并缓存
export async function getAppData() {
  try {
    const res = await request(apiConfig.appData)
    // 根据API实际返回的数据结构调整，这里尝试兼容两种可能的结构
    if (res && (res.datat || res.data)) {
      const dataToSave = res.datat || res.data;
      uni.setStorageSync('app', dataToSave)
      // 打印获取到的数据
      //console.log('获取app数据成功:', dataToSave);
      return dataToSave
    }
  } catch (error) {
    //console.error('获取app数据失败:', error)
    return uni.getStorageSync('app') || null
  }
}
